<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
            "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>



<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.08">
<LINK rel="stylesheet" type="text/css" href="umsroot.css">
<TITLE>
Declaration
</TITLE>
</HEAD>
<BODY >
<A HREF="umsroot094.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="umsroot093.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot096.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
<HR>

<H2 CLASS="section"><A NAME="htoc219">16.2</A>&nbsp;&nbsp;Declaration</H2>
An attributed variable can have any number of attributes.
The attributes are accessed by their name.
Before an attribute can be created and used, it must be declared
with the predicate <A HREF="../bips/kernel/termmanip/meta_attribute-2.html"><B>meta_attribute/2</B></A><A NAME="@default900"></A>.
The declaration has the format
<BLOCKQUOTE CLASS="quote">
<B>meta_attribute(Name, HandlerList)</B>
</BLOCKQUOTE>
<B>Name</B> is an atom denoting the attribute name
and usually it is the name of the module where this attribute
is being created and used.
<B>HandlerList</B> is a (possibly empty) list of handler specifications
for this attribute (see Section <A HREF="umsroot100.html#metahandlers">16.7</A>).<BR>
<BR>
<HR>
<A HREF="umsroot094.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A>
<A HREF="umsroot093.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A>
<A HREF="umsroot096.html"><IMG SRC ="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
